5

Codeerregelsets

Een van de moeilijkste dingen van het werken met XML is content om te zetten van zijn oorspronkelijke structuur in XML-structuur. Een QuarkXPress Passport-document kan zijn opgezet met typogrammen en andere opmaakregels, maar hoe vertaal je een dergelijke documentarchitectuur in XML?

Avenue.quark helpt bij het automatiseren van dit proces. Uitgaande van een QuarkXPress Passport-document en een DTD, kunt u met avenue.quark een "codeerregelset" creëren, die automatisch combinaties van typogrammen, kleuren en stijlen in QuarkXPress Passport kan omzetten in elementtypes in een DTD.


Wat zijn codeerregelsets?

Met een codeerregelset kunt u een relatie leggen tussen typogrammen en tekststijlen in QuarkXPress Passport en de elementen in een DTD. U kunt een codeerregelset gebruiken om een deel van het coderingsproces van een QuarkXPress Passport-document te automatiseren.

Kijk voor meer informatie over het gebruik van codeerregelsets bij het coderingsproces bij hoofdstuk 6 "Content coderen".



Wat is een codeerregelset?

Met een codeerregelset kunt u opgeven dat wanneer u gaat coderen, content die voldoet aan een specifieke set criteria moet worden gecodeerd met een specifieke elementnaam. U kunt bijvoorbeeld een codeerregelset maken die aangeeft dat iedere alinea die gebruik maakt van het alineatypogram "Kopregel" moet worden gecodeerd als een <kopregel>-element.

Een codeerregelset is een set met codeerregels die een naam heeft gekregen en die bestaat uit codeerregels die alle zijn gebaseerd op één DTD. Iedere codeerregel specificeert welke typogrammen, kleuren en tekststijlen moeten worden omgezet in hun corresponderende elementen. De codeerregel in bijvoorbeeld onderstaande illustratie geeft aan dat tekst waaraan het typogram "Titel" is toegekend, moet worden gecodeerd met het <titel>-elementtype:

Met codeerregelsets kunt u regelen hoe het coderen met behulp van codeerregels moet plaatsvinden.

U kunt een andere codeerregel toevoegen om aan te geven dat cursieve tekst in alinea's waaraan het typogram "Titel" is toegekend, een <nadruk>-code moet krijgen, en wel als volgt:

Met codeerregelsets kunt u elementen binnen andere elementen nesten.

Uitgaande van beide codeerregels zal een alinea waaraan het alineatypogram "Titel" is toegekend en die cursieve tekst bevat als volgt worden gecodeerd:

<titel>Wat de dienstbode <nadruk>in werkelijkheid </nadruk>zag</titel>

Om het geselecteerde elementtype te kunnen gebruiken, moet aan alle criteria onder Codeerregelinstellingen zijn voldaan. De volgende codeerregel bijvoorbeeld geeft aan dat alleen tekst waaraan het alineatypogram "Auteur" is toegekend en waarvan de tekst Rood is en vet zal worden gecodeerd met het <auteur>-elementtype:

Aan alle codeerregelcriteria moet zijn voldaan voordat een code kan worden gebruikt.

Indien u meer dan één vormgevingsoptie wilt toekennen aan een specifiek elementtype, kunt u voor dat elementtype gewoon extra codeerregels creëren. Stel dat u voor namen twee verschillende typogrammen gebruikt; het ene typogram voor de eerste naam in een lijst en het andere typogram voor de overige namen in de lijst. (Dit wordt vaak gedaan uit ruimteoverwegingen.) U kunt dan gewoon twee codeerregels maken voor het <naam>-elementtype, een die het typogram "Eerste naam" omzet in <naam> en een andere codeerregel die het typogram "Resterende namen" omzet in <naam>. Avenue.quark zal dan alinea's die voldoen aan een van beide criteria coderen als <naam>-elementen.

Wie maakt codeerregelsets? In veel productieomgevingen maken alleen medewerkers in de voorbereiding codeerregelsets.



Hoe werkt het toekennen van codeerregelsets aan tekst?

Wanneer u codeerregelsets toekent aan een kader dat volstaat met tekst, loopt avenue.quark van boven naar beneden door de tekst en probeert de tekst te coderen in overeenstemming met de DTD. Op bepaalde punten in dit proces kijkt avenue.quark of het tekst kan vinden die overeenkomt met een codeerregel die bij de DTD hoort.

Tekst die niet kan worden gecodeerd met een codeerregel wordt genegeerd.



Conflicterende codeerregels

Stel dat u een codeerregelset heeft gemaakt met twee codeerregels. De eerste codeerregel zegt tekst waaraan "Platte tekst" is toegekend te coderen als een <platte_tekst>-element. De tweede regel zegt tekst die "Platte tekst" gebruikt te coderen als een <alinea>-element. Wat gebeurt er als u deze codeerregelset loslaat op een kader met een tekstalinea waaraan het typogram "Platte tekst" is toegekend?

Het antwoord is simpel: avenue.quark opent een dialoogvenster met de vraag welke elementtype u wilt gebruiken. Het dialoogvenster Kies codererregel/positie verschijnt iedere keer wanneer twee of meer codeerregels van toepassing zijn op dezelfde tekst.

Wat als u wilt dat avenue.quark dezelfde tekst twee keer codeert, en kopieën van de tekst in zowel een <platte_tekst>-element als in een <alinea>-element zet? U kunt dan twee codeerregelsets maken één die zegt "Platte tekst" te coderen als een <platte_tekst>-element, en één die zegt "Platte tekst" te coderen als een <alinea>-element en vervolgens dezelfde tekst twee keer coderen, dat wil zeggen één keer met iedere codeerregelset.


Het dialoogvenster Kies Codererregel/Positie


Werken met codeerregelsets

Met een codeerregelset kunt u een relatie leggen tussen typogrammen, kleuren en tekststijlen in QuarkXPress Passport met elementen in een DTD. U kunt een codeerregelset gebruiken om het proces van het coderen van een QuarkXPress Passport-document te automatiseren.

Kijk voor informatie over het gebruik van codeerregelsets tijdens het coderen bij hoofdstuk 6 "Content coderen".



Een codeerregelset maken

Met een codeerregelset kunt u aangeven hoe tekst moet worden gecodeerd wanneer u gebruik maakt van codeerregels. U maakt een codeerregelset als volgt:

1. Maak of open het XML-document waarvoor u een codeerregelset wilt maken.


2. Maak of open een QuarkXPress Passport-document waarin alle typogrammen en kleuren staan die u in de codeerregelset wilt gebruiken.


3. Kies Wijzig (Mac OS) of Bewerk (Windows) > Codeerregels. Het dialoogvenster Codeerregels verschijnt.


Maak een nieuwe codeerregelset via het dialoogvenster Codeerregels

4. Klik op de knop Nieuwe set om een nieuwe codeerregelset te maken. Het dialoogvenster Wijzig codeerregels verschijnt, met in de titelbalk het rootelement van de DOCTYPE en de bestandsnaam.


Via het Wijzig codeerregelset-palet kunt u een codeerregelset maken en bewerken.

5. Voer in het Naam-veld een naam voor de codeerregelset in.


6. Selecteer een vetgedrukt elementtype in de lijst aan de linkerkant. (Als de naam van een elementtype niet beschikbaar is, betekent dat dat de DTD niet toestaat dat hieraan codeerregels worden gekoppeld.) Om een container element uit te "pakken" en alle elementen weer te geven die het bevat, klikt u op het -(Mac OS) of -symbool (Windows) naast het desbetreffende element. Wilt u meer van de DTD zien, blader dan door de lijst.


7. Om te beginnen met het toevoegen van een nieuwe codeerregel aan de codeerregelset, klikt u op Codeerregel toevoegen. Een lege regel wordt aan de Codeerregels-lijst toegevoegd.


8. Om de codeerregel zodanig te configureren dat tekst waaraan een specifiek typogram is toegekend automatisch wordt gecodeerd, klikt u op Typogram en kiest u vervolgens een typogramnaam in het venster-/uitrolmenu Typogram. Als u een opeenvolgende reeks alinea's die alle dat typogram gebruiken wilt opnemen als afzonderlijke elementen, kruis dan het vakje Nieuwe code voor iedere alinea aan. Wilt u een opeenvolgende reeks alinea's die alle dat typogram gebruiken opnemen als één element, kruis dit vakje dan niet aan. Typogrammen die cursief worden weergegeven, zijn niet aanwezig in het actieve QuarkXPress Passport-document.


Om ervoor te zorgen dat de optie Nieuwe code voor iedere alinea werkt, moet de DTD ondersteunen dat gelijktijdig meerdere opeenvolgende elementen kunnen zijn geselecteerd.


9. Om de codeerregel zodanig te configureren dat tekst die gebruik maakt van een specifieke kleur automatisch wordt gecodeerd, klikt u op Kleur waarna u in het venster-/uitrolmenu Kleur een kleurnaam kiest. Als kleurnamen cursief worden weergegeven, zijn de kleuren niet aanwezig in het actieve QuarkXPress Passport-document.


Codeerregelsets bevatten alleen de namen van typogrammen en kleuren. Als u de naam van een typogram of kleur in het document wijzigt, moet u de codeerregelset ook updaten.


10. Om de codeerregel zodanig te configureren dat tekst die gebruik maakt van een specifieke combinatie van stijlen automatisch wordt gecodeerd, klikt u op Stijl waarna u op de symbolen klikt die aangeven welke stijlen moeten worden gecodeerd. Een stijlsymbool met een zwarte achtergrond geeft aan dat tekst deze stijl moet hebben om te worden gecodeerd; een stijlsymbool met een witte achtergrond geeft aan dat tekst in deze stijl niet wordt gecodeerd; een stijlsymbool met een grijze achtergrond betekent dat deze stijl geen rol zal spelen tijdens het coderen.


Onthoud dat tekst pas is gecodeerd wanneer u de codeerregelset heeft gehanteerd. Kijk voor meer informatie over coderen met codeerregelsets hoofdstuk 6 "Content coderen".


11. Om voor het geselecteerde elementtype een nieuwe codeerregel toe te voegen, moet u klikken op Codeerregel toevoegen en vervolgens stap 8 t/m 10 herhalen. Om een nieuwe codeerregel te baseren op een bestaande codeerregel, selecteert u de bestaande codeerregel in de Codeerregels-lijst; klik op Dupliceer om van die codeerregel een kopie te maken, waarna u het duplicaat gewoon kunt configureren.


12. Wilt u een codeerregel voor het geselecteerde elementtype verwijderen, selecteer de codeerregel dan in de Codeerregels-lijst, waarna u op Wis klikt.


Elementtypes waarvoor codeerregels zijn gemaakt, worden cursief in de DTD-lijst weergegeven.


13. Om uw wijzigingen in de codeerregelset te bewaren, klikt u op OK.


14. Klik op Bewaar om het dialoogvenster Codeerregels te sluiten.


Komt een elementtype meer dan eens in de DTD Tree voor, dan houdt dat in dat als u een codeerregel maakt voor het ene elementtype deze codeerregel ook geldt voor alle andere elementtypes.


Stel dat u een codeerregelset wilt maken waarin ook regels voor typogrammen van diverse andere documenten moeten voorkomen. Maak daartoe een gewoon document, voeg alle typogrammen uit de diverse documenten daaraan toe (Archief (Mac OS) of Bestand (Windows) > Voeg toe > tabblad Typogrammen), waarna u de codeerregels kunt maken.


Codeerregelsets bewerken, dupliceren en verwijderen

Via het dialoogvenster Codeerregels (Wijzig-menu (Mac OS) of Bewerk-menu (Windows)) kunt u codeerregelsets bewerken, dupliceren en verwijderen. Selecteer gewoon de desbetreffende codeerregelset in de lijst en klik op een van de volgende knoppen: